/*
NumRandom.java
Paola Garcia, 10205
08 agosto 2011
Descripcion: Hoja de trabajo 3.
Clase que realiza un arreglo de numeros al azar dependiendo
de la cantidad de numeros que desee el usuario.
"Tomado como referencia el trabajo de Claudia Grajeda"
*/	

import java.util.Random;

public class NumRandom{
	
	//Declaracion de objetos
	Selection seleccion;
	Merge sortMerge;
	private int[] numRandom;
	private Random numero = new Random();
	
	public NumRandom(){
		//condiciones iniciales
		numRandom = new int[10]; //para ordenar el numero minimo para la grafica
		seleccion = new Selection();
		sortMerge = new Merge();
		
	}
	
	//para realizar el arreglo dependiendo de cuantos numeros desee el usuario
	
	public NumRandom(int cuantos){
		numRandom = new int[cuantos];
	}
	
	//para observar los valores en el arreglo
	public void hacerRandom(){
		for(int num = 0; num<numRandom.length; num ++){
			numRandom[num] = numero.nextInt(2000); // para poder realizar la grafica con los 2000 numeros
		}
	}
	
	//ver los numeros en el arreglo
	public String verNumeros(){
		String datos = "";
		//mostrar mensajes
		datos += "\n Cantidad de numeros a ordenar: " + numRandom.length + "\n";
		datos += "\n Listado de numeros: \n";
		for(int num = 0; num<numRandom.length; num ++){
			datos += "         " + numRandom[num] + "\n";
		}
		return datos;
	}
	
	//ver los numeros oredenados con el sort selection
	public String verNumeroSelection(){
		seleccion.selectionSort(numRandom, numRandom.length);
		//mostrar mensajes
		String datos = "";
		datos += "\n Cantidad de numeros ordenados: " + numRandom.length + "\n";
		datos += "\n Listado de numeros ordenados por Selection: \n";
		for(int num = 0; num<numRandom.length; num ++){
			datos += "         " + numRandom[num] + "\n";
		}
		return datos;
	}
	
	//ver los numeros ordenados con el sort merge
	public String verNumerosMerge(){
		sortMerge.mergeSort(numRandom, numRandom.length);
		//mostrar mensajes
		String datos = "";
		datos += "\n Cantidad de numeros ordenados: " + numRandom.length + "\n";
		datos += "\n Listado de numeros ordenados por Merge: \n";
		for(int num = 0; num<numRandom.length; num ++){
			datos += "         " + numRandom[num] + "\n";
		}
		return datos;
	}

}
		